package com.sservice.model.dao;

import com.sservice.model.entity.Info;
import com.sservice.model.vo.InfoVo;

import java.util.List;

public interface IInfoDao {
    int deleteByPrimaryKey(Integer id);

    int insert(Info record);

    int insertSelective(Info record);

    Info selectByPrimaryKey(Integer id);

    List<InfoVo> queryPlainByPage(InfoVo record);

    int updateByPrimaryKeySelective(Info record);

    int updateByPrimaryKeyWithBLOBs(Info record);

    int updateByPrimaryKey(Info record);

    /**
     * type1=5 团队作品
     * type1=2 导师作品
     * type1=0 资讯
     * type1=1 竞拍故事
     *
     * @param user
     * @return
     */
    List<Info> queryByPage(InfoVo user);

    /**
     * 关系查询
     *
     * @param user
     * @return
     */
    List<Info> queryWithDrByPage(InfoVo user);

    /**
     * 查询服务详情
     *
     * @param user
     * @return
     */
    List<InfoVo> queryWithOrderShopByPage(InfoVo user);

    /**
     * 关系查询统计
     *
     * @param user
     * @return
     */
    int countWithDrByPage(InfoVo user);

    /**
     * @param user
     * @return
     */
    List<InfoVo> queryWithCategoryByPage(InfoVo user);

    /**
     * 符合统计条件的总数统计
     *
     * @param user
     * @return
     */
    int queryCount(InfoVo user);
}